<?xml version='1.0'?>

<gl_extension name="GL_EXT_convolution" reg_no="12">
	<tokens>
		<token name="GL_CONVOLUTION_1D_EXT" value="0x8010"/>
		<token name="GL_CONVOLUTION_2D_EXT" value="0x8011"/>
		<token name="GL_SEPARABLE_2D_EXT" value="0x8012"/>
		<token name="GL_CONVOLUTION_BORDER_MODE_EXT" value="0x8013"/>
		<token name="GL_CONVOLUTION_FILTER_SCALE_EXT" value="0x8014"/>
		<token name="GL_CONVOLUTION_FILTER_BIAS_EXT" value="0x8015"/>
		<token name="GL_REDUCE_EXT" value="0x8016"/>
		<token name="GL_CONVOLUTION_FORMAT_EXT" value="0x8017"/>
		<token name="GL_CONVOLUTION_WIDTH_EXT" value="0x8018"/>
		<token name="GL_CONVOLUTION_HEIGHT_EXT" value="0x8019"/>
		<token name="GL_MAX_CONVOLUTION_WIDTH_EXT" value="0x801A"/>
		<token name="GL_MAX_CONVOLUTION_HEIGHT_EXT" value="0x801B"/>
		<token name="GL_POST_CONVOLUTION_RED_SCALE_EXT" value="0x801C"/>
		<token name="GL_POST_CONVOLUTION_GREEN_SCALE_EXT" value="0x801D"/>
		<token name="GL_POST_CONVOLUTION_BLUE_SCALE_EXT" value="0x801E"/>
		<token name="GL_POST_CONVOLUTION_ALPHA_SCALE_EXT" value="0x801F"/>
		<token name="GL_POST_CONVOLUTION_RED_BIAS_EXT" value="0x8020"/>
		<token name="GL_POST_CONVOLUTION_GREEN_BIAS_EXT" value="0x8021"/>
		<token name="GL_POST_CONVOLUTION_BLUE_BIAS_EXT" value="0x8022"/>
		<token name="GL_POST_CONVOLUTION_ALPHA_BIAS_EXT" value="0x8023"/>
	</tokens>

	<functions>
		<function name="glConvolutionFilter1DEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="internalformat"/>
				<param type="GLsizei" name="width"/>
				<param type="GLenum" name="format"/>
				<param type="GLenum" name="type"/>
				<param type="const GLvoid*" name="image"/>
			</params>
		</function>
		<function name="glConvolutionFilter2DEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="internalformat"/>
				<param type="GLsizei" name="width"/>
				<param type="GLsizei" name="height"/>
				<param type="GLenum" name="format"/>
				<param type="GLenum" name="type"/>
				<param type="const GLvoid*" name="image"/>
			</params>
		</function>
		<function name="glConvolutionParameterfEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="GLfloat" name="params"/>
			</params>
		</function>
		<function name="glConvolutionParameterfvEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="const GLfloat*" name="params"/>
			</params>
		</function>
		<function name="glConvolutionParameteriEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="GLint" name="params"/>
			</params>
		</function>
		<function name="glConvolutionParameterivEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="const GLint*" name="params"/>
			</params>
		</function>
		<function name="glCopyConvolutionFilter1DEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="internalformat"/>
				<param type="GLint" name="x"/>
				<param type="GLint" name="y"/>
				<param type="GLsizei" name="width"/>
			</params>
		</function>
		<function name="glCopyConvolutionFilter2DEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="internalformat"/>
				<param type="GLint" name="x"/>
				<param type="GLint" name="y"/>
				<param type="GLsizei" name="width"/>
				<param type="GLsizei" name="height"/>
			</params>
		</function>
		<function name="glGetConvolutionFilterEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="format"/>
				<param type="GLenum" name="type"/>
				<param type="GLvoid*" name="image"/>
			</params>
		</function>
		<function name="glGetConvolutionParameterfvEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="GLfloat*" name="params"/>
			</params>
		</function>
		<function name="glGetConvolutionParameterivEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="pname"/>
				<param type="GLint*" name="params"/>
			</params>
		</function>
		<function name="glGetSeparableFilterEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="format"/>
				<param type="GLenum" name="type"/>
				<param type="GLvoid*" name="row"/>
				<param type="GLvoid*" name="column"/>
				<param type="GLvoid*" name="span"/>
			</params>
		</function>
		<function name="glSeparableFilter2DEXT" return="void">
			<params>
				<param type="GLenum" name="target"/>
				<param type="GLenum" name="internalformat"/>
				<param type="GLsizei" name="width"/>
				<param type="GLsizei" name="height"/>
				<param type="GLenum" name="format"/>
				<param type="GLenum" name="type"/>
				<param type="const GLvoid*" name="row"/>
				<param type="const GLvoid*" name="column"/>
			</params>
		</function>
	</functions>
</gl_extension>
